Merge branch 'benzea/fix-css-update' into 'gtk-3-24'
authorBenjamin Otte <otte.benjamin@googlemail.com>
Mon, 15 Jun 2020 20:13:56 +0000 (20:13 +0000)
committerBenjamin Otte <otte.benjamin@googlemail.com>
Tue, 16 Jun 2020 13:10:15 +0000 (13:10 +0000)
Fix CSS update loop

See merge request GNOME/gtk!2093

(cherry picked from commit 947c3e9f723ef733ab46e4dce34fa41b91cb0604)

7a5caf1b cssnode: Don't queue_validate/deque_validate invisible nodes

gtk/gtkcssnode.c

index 9184ffe92807de4a1a4d0d58ea56bcd8b02e1b52..b8522a1e37c8e0088676438081e94b81004bb293 100644 (file)
@@ -681,14 +681,14 @@ gtk_css_node_get_timestamp (GtkCssNode *cssnode)
 static void
 gtk_css_node_parent_was_unset (GtkCssNode *node)
 {
-  if (node->invalid)
+  if (node->visible && node->invalid)
     GTK_CSS_NODE_GET_CLASS (node)->queue_validate (node);
 }
 
 static void
 gtk_css_node_parent_will_be_set (GtkCssNode *node)
 {
-  if (node->invalid)
+  if (node->visible && node->invalid)
     GTK_CSS_NODE_GET_CLASS (node)->dequeue_validate (node);
 }